Villafranca de los Barros is a municipality in the province of Badajoz, Extremadura, Spain. It has a population of 12,894 and an area of 105 km².